library(pacman)
p_load(tidycensus, tidyverse,leaflet, geojsonio, sf, tmap, tmaptools, DT)
census_api_key("680398dff0a2f4c566f10c95888da7f25e55147b")
options(tigris_use_cache = TRUE)
#block_group<-geojson_read("https://opendata.arcgis.com/datasets/85a2e8e4bf994742a5855c1339517681_2.geojson", what="sp") %>% st_as_sf()
tract <- geojson_read("https://opendata.arcgis.com/datasets/85a2e8e4bf994742a5855c1339517681_3.geojson", what="sp") %>%
st_as_sf()
###### ACS variables
decen_var <- load_variables(2010, "sf1", cache = TRUE)
datatable(decen_var, extensions = 'Buttons',
rownames=F,options=list(pageLength = 15, dom = 'Bfrtip',buttons = c('csv','pdf'),
columnDefs = list(list(className = 'dt-center', targets = 0:1))),
class = 'cell-border stripe')
datatable(decen_var, extensions = 'Buttons',
rownames=F,options=list(pageLength = 15, dom = 'Bfrtip',buttons = c('csv','pdf'),
columnDefs = list(list(className = 'dt-center', targets = 0:1))),
class = 'cell-border stripe')
acs_var <- load_variables(2016, "acs5", cache = TRUE)
datatable(acs_var, extensions = 'Buttons',
rownames=F,options=list(pageLength = 15, dom = 'Bfrtip',buttons = c('csv','pdf'),
columnDefs = list(list(className = 'dt-center', targets = 0:1))),
class = 'cell-border stripe')
## Housing Units
housing_units <- c(`housing units`= "B25001_001")
nv <- get_acs(geography = "tract", year=2016,
variables = housing_units,
state = "NV", geometry = TRUE )
ca <- get_acs(geography = "tract", year=2016,
variables = housing_units,
state = "CA", geometry= TRUE)
all.ca.nv<- rbind(nv, ca)
data<-all.ca.nv %>%
left_join(data.frame(tract), by="GEOID") %>%
filter(!is.na(STATEFP)) %>%
select(GEOID, NAME.x, variable, estimate, moe, County)
tmap_mode("view")
data %>% group_by(GEOID) %>%
tm_shape() + tm_polygons()
## HOUSEHOLD INCOME IN THE PAST 12 MONTHS (IN 2016 INFLATION-ADJUSTED DOLLARS)
median_income <- c(`less than 10K`= "B19001_002",
`10-15K`= "B19001_003",
`125-150K` = "B19001_015",
`150-200K` = "B19001_016",
`Over 200K` = "B19001_017")
nv <- get_acs(geography = "tract", year=2016,
variables = median_income,
state = "NV", geometry = TRUE, summary_var = "B19001_001" )
ca <- get_acs(geography = "tract", year=2016,
variables = median_income, summary_var = "B19001_001",
state = "CA", geometry= TRUE)
all.ca.nv<- rbind(nv, ca)
data1<-all.ca.nv %>%
left_join(data.frame(tract), by="GEOID") %>%
filter(!is.na(STATEFP)) %>%
dplyr::select(GEOID, NAME.x, variable, estimate, moe, summary_est, summary_moe, County)
tmap_mode("view")
data1 %>% group_by(GEOID) %>%
filter(variable=="125-150K") %>%
mutate(percent=paste0(round((estimate/summary_est)* 100, 1), "%")) %>%
tm_shape() + tm_polygons()
Percent of households that drive to work
work_transport <- c(Drive= "B08301_002",
Walk= "B08301_019",
Bike = "B08301_018",
`Public Transport` = "B08301_010",
`Work from Home` = "B08301_021",
Other = "B08301_020",
Motorcycle = "B08301_017",
Taxi = "B08301_016")
nv <- get_acs(geography = "tract", year=2016,
variables = work_transport,
state = "NV", geometry = TRUE, summary_var = "B08301_001" )
ca <- get_acs(geography = "tract", year=2016,
variables = work_transport, summary_var = "B08301_001",
state = "CA", geometry= TRUE)
all.ca.nv<- rbind(nv, ca)
data2<-all.ca.nv %>%
left_join(data.frame(tract), by="GEOID") %>%
filter(!is.na(STATEFP)) %>%
dplyr::select(GEOID, NAME.x, variable, estimate, moe, summary_est, summary_moe, County)
tmap_mode("view")
data2 %>% group_by(GEOID) %>%
filter(variable=="Drive") %>%
mutate(percent=paste0(round((estimate/summary_est)* 100, 1), "%")) %>%
tm_shape() + tm_polygons()
Travel time to work
travel_time_work <- c(`less than 5 min`= "B08303_002",
`5-9 min`= "B08303_003",
`10-14 min` = "B08303_004",
`15-19 min` = "B08303_005",
`20-24 min` = "B08303_006",
`25-29 min` = "B08303_007",
`30-34 min` = "B08303_008",
`35-39 min` = "B08303_009",
`40-44 min` = "B08303_010",
`45-59 min` = "B08303_011",
`60-89 min` = "B08303_012",
`90 min or more` = "B08303_013")
nv <- get_acs(geography = "tract", year=2016,
variables = travel_time_work,
state = "NV", geometry = TRUE, summary_var = "B08303_001" )
ca <- get_acs(geography = "tract", year=2016,
variables = travel_time_work, summary_var = "B08303_001",
state = "CA", geometry= TRUE)
all.ca.nv<- rbind(nv, ca)
data3<-all.ca.nv %>%
left_join(data.frame(tract), by="GEOID") %>%
filter(!is.na(STATEFP)) %>%
dplyr::select(GEOID, NAME.x, variable, estimate, moe, summary_est, summary_moe, County)
tmap_mode("view")
data3 %>% group_by(GEOID) %>%
filter(variable=="10-14 min") %>%
mutate(percent=paste0(round((estimate/summary_est)* 100, 1), "%")) %>%
tm_shape() + tm_polygons()